package com.todo.biz.iface.backend;

import com.todo.biz.iface.backend.request.*;
import com.todo.biz.iface.backend.response.QueryCollectSetByConditionResp;
import com.todo.biz.iface.backend.response.QueryCollectSetDetailResp;
import com.todo.common.common.entity.response.BizPageResponse;
import com.todo.common.common.entity.response.BizResponse;

/**
 * @author zhangwenxiang
 * @date 2024/3/5 13:03
 * @description
 */
public interface CollectSetBackendIface {

    /**
     * 新增推荐集合
     *
     * @param insertCollectSet
     * @return
     */
    BizResponse<Boolean> insertCollectSet(InsertCollectSetReq insertCollectSet);

    /**
     * 更新推荐集合
     *
     * @param updateCollectSetByIdReq
     * @return
     */
    BizResponse<Boolean> updateCollectSetById(UpdateCollectSetByIdReq updateCollectSetByIdReq);

    /**
     * 多条件查询推荐集合
     *
     * @param queryCollectSetByCondition
     * @return
     */
    BizPageResponse<QueryCollectSetByConditionResp> queryCollectSetByCondition(QueryCollectSetByConditionReq queryCollectSetByCondition);

    /**
     * 启禁用推荐合集
     *
     * @param enableCollectSetByIdReq
     * @return
     */
    BizResponse<Boolean> enableCollectSetById(EnableCollectSetByIdReq enableCollectSetByIdReq);

    /**
     * 更新推荐集合关联
     *
     * @param updateCollectRelationReq
     * @return
     */
    BizResponse<Boolean> updateCollectRelation(UpdateCollectRelationReq updateCollectRelationReq);

    /**
     * 收藏集合详情信息
     *
     * @param queryCollectSetDetailReq
     * @return
     */
    BizResponse<QueryCollectSetDetailResp> queryCollectSetDetail(QueryCollectSetDetailReq queryCollectSetDetailReq);
}
